package com.mybatis.lo.executor;

import com.mybatis.lo.config.Configuration;
import com.mybatis.lo.config.MappedStatement;

import java.util.List;

/**
 * 查询执行器，通过传入的配置查询数据
 * @author zhangbh
 * 2023-06-15 07:45
 **/
public interface Executor {

    /**
     * 执行查询
     * @param statement 执行声明配置
     * @param configuration 全局配置
     * @param param 参数
     * @param <T> 类型
     * @return 查询信息
     */
    <T> List<T> queryList(MappedStatement statement, Configuration configuration, Object param);
}
